Para mostrar los avances del proyecto se mostrará etapa tras etapa, las cuales se reflejarán en los productos obtenidos y de los cuales se pueden bajar los archivos fuentes.
Para todos los ejemplos se necesita el archivo egavga.bgi:
Avance 1:
Se definió la estructura básica
(cubo) y se solucionó el problema de dibujar en pantalla. En este
programa cada vez que se pulsa enter el cubo baja una unidad. En terminos
reales al bajar el objeto , este se escala y se dibuja con proyeccion Cabinet.
Los archivos son:
Nota: Para este prototipo no se considero el eje Z en forma real.
Avance 2:
En este avance se incorpora la rotacion a la izquierda y derecha con respecto al eje Z (sin que este exista aun). El programa comienza a funcionar al pulsar enter, luego de esto, el cubo automaticamente comienza a bajar (1 unidad). Durante la bajada del cubo se pueden aplicar rotaciones a la izquierda y derecha en forma arbitraria. La forma de bajada del cubo, al igual que en la etapa anterior, es igual que en la etapa 1, es decir, haciendo escalamiento.
Los archivos son:
Avance 3:
En el avance 3,se modifica el eje de rotación y se comienza a trabajar con el eje Z. (hasta el fin de este avance no se logró). Producto del escalamiento se encuentra que cuando el resultado del escalamiento incorpora decimales, esto se traduce en una traslación producto del redondeo.
Los archivos son:
Avance 4 (Perspectivas y movimientos):
Para este avance, se implementó el trabajo con el eje Z, es decir, a partir de ahora no se hacen escalamientos par representar la caida del cubo, si no, traslaciones en el eje Z (Nueva coordenada), la caida es cada 3 segundos. Lo que se hace es eliminar la proyección cabinet y reemplzarla por una proyección en perspectiva (un punto de fuga (0,0,400)). El origen de coordenadas se encuentra en la parte superior izquierda de la pantalla. Mientras tanto los movimientos de rotacion implementados son: flecha izquierda: Z; flecha abajo: X; flecha derecha: Y. todas las rotaciones son en angulo de 90 grados positivos. se vuelve a cambiar el punto de origen, para dejarlo en uno de los vertices del cubo.
Primera aproximacion de un cubo en perspectiva: prueba.cpp y prueba.exe .
los archivos del avance son:
Nota: se esta tratando de solucionar el problema de grabar y reponer un trozo de pantalla.
Avance 5:
Es una extencion del avance 4 en la cual se hizo un borrado de pantalla completo ( momentaneamente) con el objetivo de que se aprecie bien las rotacione. En este caso se agrega ademas 1 figura compuesta por mas de 1 cubo (3 cubos que forman una L). la implementacion de esta figura se hizo a traves de 3 variables tipo cubo.
t3d5.cpp y...t3d5.cpp
Tareas proximas:
Solución de: